home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 24 / Amiga Format AFCD24 (Feb 1998, Issue 108).iso / -seriously_amiga- / shareware / programming / other / apic / examples / amikeyterm.lst < prev    next >
File List  |  1998-01-05  |  19KB  |  511 lines

  1. #PIC V1.0 (c)1997 J.Petroglou    LIST FILE
  2. #file: dh2:IDE/APICforAMINET/APIC/examples/Amikeyterm.asm
  3. #date: Sun Dec 14 20:41:45 1997
  4. #pic : PIC16C84
  5. #xtal: 4000000 Hz
  6.  
  7. ADDR CODE     SRCLINE SOURCECODE
  8.  
  9. 0000             000001 
  10. 0000             000002 
  11. 0000             000003 ;PIC16C84 keybord controller for Amiga keybords
  12. 0000             000004 ;pressed keys are located in table and send in serial ascii format (19200baud)
  13. 0000             000005 ;
  14. 0000             000006 ;Dirk Duesterberg duesterb@unixserv.rz.fh-hannover.de
  15. 0000             000007 ;                 http://linux.rz.fh-hannover.de/~duesterb
  16. 0000             000008 
  17. 0000             000009 
  18. 0000             000010     list    p=PIC16C84, r=dec, s=on
  19. 0000             000011 
  20. 0000             000012 
  21. 0000             000013     device    HS_OSC, WDT_OFF
  22. 0000             000014     xtal    4000000
  23. 0000             000015 
  24. 0000             000016 PortA    = 05h
  25. 0000             000017 PortB    = 06h
  26. 0000             000018 pcl    = 02h
  27. 0000             000019 
  28. 0000             000020 
  29. 0000             000021 
  30. 0000             000022 #define    ACLK    PortA,0
  31. 0000             000023 #define    ADAT    PortA,1
  32. 0000             000024 
  33. 0000             000025 #define    TXD    PortA,2
  34. 0000             000026 #define c    3,0
  35. 0000             000027 #define z    3,2
  36. 0000             000028 
  37. 0000             000029 RA    =    5        ;PortA is register 5
  38. 0000             000030 
  39. 0000             000031 
  40. 0000             000032 
  41. 0000             000033 
  42. 0000             000034     CBLOCK    0ch
  43. 0000             000035 
  44. 0000             000035 
  45. 0000             000036        count0
  46. 0000             000037        count1
  47. 0000             000038        Akeydat
  48. 0000             000039        serbuf
  49. 0000             000040 
  50. 0000             000040 
  51. 0000             000041     ENDC
  52. 0000             000042 
  53. 0000             000043 
  54. 0000             000044 
  55. 0000 30FB        000045     movlw    11111011b        ;pin 2 is output (TXD)
  56. 0001 0065        000046     tris    PortA
  57. 0002             000047 
  58. 0002 3000        000048     movlw    0            ;PortB is output
  59. 0003 0066        000049     tris    PortB
  60. 0004             000050 
  61. 0004 2888        000051     goto    Reset
  62. 0005             000052 
  63. 0005             000053 
  64. 0005             000054 
  65. 0005 080E        000055 rawkeys    movf    Akeydat,w
  66. 0006 397F        000056     andlw    7fh            ;clr bit 7 (make/break or pressed/unpressed)
  67. 0007 0782        000057     addwf    pcl,f
  68. 0008             000058 
  69. 0008             000059 
  70. 0008             000060 ; characters, numbers and spezial keys
  71. 0008             000061 ; $00-$3F
  72. 0008             000062 
  73. 0008 3400        000063     retlw    00h            ;00h
  74. 0009 3400        000064     retlw    00h            ;01h
  75. 000A 3400        000065     retlw    00h            ;02h
  76. 000B 3400        000066     retlw    00h            ;03h
  77. 000C 3400        000067     retlw    00h            ;04h
  78. 000D 3400        000068     retlw    00h            ;05h
  79. 000E 3400        000069     retlw    00h            ;06h
  80. 000F 3400        000070     retlw    00h            ;07h
  81. 0010             000071 
  82. 0010 3400        000072     retlw    00h            ;08h
  83. 0011 3400        000073     retlw    00h            ;09h
  84. 0012 3400        000074     retlw    00h            ;0Ah
  85. 0013 3400        000075     retlw    00h            ;0Bh
  86. 0014 3400        000076     retlw    00h            ;0Ch
  87. 0015 3400        000077     retlw    00h            ;0Dh
  88. 0016 3400        000078     retlw    00h            ;0Eh    
  89. 0017 3400        000079     retlw    00h            ;0Fh
  90. 0018             000080 
  91. 0018             000081 
  92. 0018             000082 
  93. 0018 3471        000083     retlw    "q"            ;10h
  94. 0019 3477        000084     retlw    "w"            ;11h
  95. 001A 3465        000085     retlw    "e"            ;12h
  96. 001B 3472        000086     retlw    "r"            ;13h
  97. 001C 3474        000087     retlw    "t"            ;14h
  98. 001D 347A        000088     retlw    "z"            ;15h
  99. 001E 3475        000089     retlw    "u"            ;16h
  100. 001F 3469        000090     retlw    "i"            ;17h
  101. 0020             000091 
  102. 0020 346F        000092     retlw    "o"            ;18h
  103. 0021 3470        000093     retlw    "p"            ;19h
  104. 0022 FFFFFFFC        000094     retlw    "ü"            ;1Ah
  105. 0023 342B        000095     retlw    "+"            ;1Bh
  106. 0024 3400        000096     retlw    00h            ;1Ch
  107. 0025 3400        000097     retlw    00h            ;1Dh
  108. 0026 3400        000098     retlw    00h            ;1Eh
  109. 0027 3400        000099     retlw    00h            ;1Fh
  110. 0028             000100 
  111. 0028             000101 
  112. 0028             000102 
  113. 0028 3461        000103     retlw    "a"            ;20h
  114. 0029 3473        000104     retlw    "s"            ;21h
  115. 002A 3464        000105     retlw    "d"            ;22h
  116. 002B 3466        000106     retlw    "f"            ;23h
  117. 002C 3467        000107     retlw    "g"            ;24h
  118. 002D 3468        000108     retlw    "h"            ;25h
  119. 002E 346A        000109     retlw    "j"            ;26h
  120. 002F 346B        000110     retlw    "k"            ;27h
  121. 0030             000111 
  122. 0030 346C        000112     retlw    "l"            ;28h
  123. 0031 FFFFFFF6        000113     retlw    "ö"            ;29h
  124. 0032 FFFFFFE4        000114     retlw    "ä"            ;2Ah
  125. 0033 3400        000115     retlw    00h            ;2Bh
  126. 0034 3400        000116     retlw    00h            ;2Ch
  127. 0035 3400        000117     retlw    00h            ;2Dh
  128. 0036 3400        000118     retlw    00h            ;2Eh
  129. 0037 3400        000119     retlw    00h            ;2Fh
  130. 0038             000120 
  131. 0038             000121 
  132. 0038             000122 
  133. 0038 3400        000123     retlw    00h            ;30h
  134. 0039 3400        000124     retlw    00h            ;31h
  135. 003A 3400        000125     retlw    00h            ;32h
  136. 003B 3400        000126     retlw    00h            ;33h
  137. 003C 3400        000127     retlw    00h            ;34h
  138. 003D 3400        000128     retlw    00h            ;35h
  139. 003E 3400        000129     retlw    00h            ;36h
  140. 003F 3400        000130     retlw    00h            ;37h
  141. 0040             000131 
  142. 0040 3400        000132     retlw    00h            ;38h
  143. 0041 3400        000133     retlw    00h            ;39h
  144. 0042 3400        000134     retlw    00h            ;3Ah
  145. 0043 3400        000135     retlw    00h            ;3Bh
  146. 0044 3400        000136     retlw    00h            ;3Ch
  147. 0045 3400        000137     retlw    00h            ;3Dh
  148. 0046 3400        000138     retlw    00h            ;3Eh
  149. 0047 3400        000139     retlw    00h            ;3Fh
  150. 0048             000140 
  151. 0048             000141 ; other spezial keys (space, TAB, Return)
  152. 0048             000142 ; $40-$4F
  153. 0048             000143 
  154. 0048 3400        000144     retlw    00h            ;40h
  155. 0049 3400        000145     retlw    00h            ;41h
  156. 004A 3400        000146     retlw    00h            ;42h
  157. 004B 3400        000147     retlw    00h            ;43h
  158. 004C 3400        000148     retlw    00h            ;44h
  159. 004D 3400        000149     retlw    00h            ;45h
  160. 004E 3400        000150     retlw    00h            ;46h
  161. 004F 3400        000151     retlw    00h            ;47h
  162. 0050             000152 
  163. 0050 3400        000153     retlw    00h            ;48h
  164. 0051 3400        000154     retlw    00h            ;49h
  165. 0052 3400        000155     retlw    00h            ;4Ah
  166. 0053 3400        000156     retlw    00h            ;4Bh
  167. 0054 3400        000157     retlw    00h            ;4Ch
  168. 0055 3400        000158     retlw    00h            ;4Dh
  169. 0056 3400        000159     retlw    00h            ;4Eh
  170. 0057 3400        000160     retlw    00h            ;4Fh
  171. 0058             000161 
  172. 0058             000162 
  173. 0058             000163 ; Function keys, Help etc.
  174. 0058             000164 ; $50-$5F
  175. 0058             000165 
  176. 0058 3400        000166     retlw    00h            ;50h
  177. 0059 3400        000167     retlw    00h            ;51h
  178. 005A 3400        000168     retlw    00h            ;52h
  179. 005B 3400        000169     retlw    00h            ;53h
  180. 005C 3400        000170     retlw    00h            ;54h
  181. 005D 3400        000171     retlw    00h            ;55h
  182. 005E 3400        000172     retlw    00h            ;56h
  183. 005F 3400        000173     retlw    00h            ;57h
  184. 0060             000174 
  185. 0060 3400        000175     retlw    00h            ;58h
  186. 0061 3400        000176     retlw    00h            ;59h
  187. 0062 3400        000177     retlw    00h            ;5Ah
  188. 0063 3400        000178     retlw    00h            ;5Bh
  189. 0064 3400        000179     retlw    00h            ;5Ch
  190. 0065 3400        000180     retlw    00h            ;5Dh
  191. 0066 3400        000181     retlw    00h            ;5Eh
  192. 0067 3400        000182     retlw    00h            ;5Fh
  193. 0068             000183 
  194. 0068             000184 
  195. 0068             000185 
  196. 0068             000186 ; shifting keys like shift, amiga, Alternate and Control
  197. 0068             000187 ; $60-6F
  198. 0068             000188     
  199. 0068 3400        000189     retlw    00h            ;60h
  200. 0069 3400        000190     retlw    00h            ;61h
  201. 006A 3400        000191     retlw    00h            ;62h
  202. 006B 3400        000192     retlw    00h            ;63h
  203. 006C 3400        000193     retlw    00h            ;64h
  204. 006D 3400        000194     retlw    00h            ;65h
  205. 006E 3400        000195     retlw    00h            ;66h
  206. 006F 3400        000196     retlw    00h            ;67h
  207. 0070             000197 
  208. 0070 3400        000198     retlw    00h            ;68h
  209. 0071 3400        000199     retlw    00h            ;69h
  210. 0072 3400        000200     retlw    00h            ;6Ah
  211. 0073 3400        000201     retlw    00h            ;6Bh
  212. 0074 3400        000202     retlw    00h            ;6Ch
  213. 0075 3400        000203     retlw    00h            ;6Dh
  214. 0076 3400        000204     retlw    00h            ;6Eh
  215. 0077 3400        000205     retlw    00h            ;6Fh
  216. 0078             000206 
  217. 0078             000207 
  218. 0078             000208 ;spezial keybord commandos
  219. 0078             000209 ; $70-$7F
  220. 0078             000210 
  221. 0078 3400        000211     retlw    00h            ;70h    
  222. 0079 3400        000212     retlw    00h            ;71h
  223. 007A 3400        000213     retlw    00h            ;72h
  224. 007B 3400        000214     retlw    00h            ;73h
  225. 007C 3400        000215     retlw    00h            ;74h
  226. 007D 3400        000216     retlw    00h            ;75h
  227. 007E 3400        000217     retlw    00h            ;76h
  228. 007F 3400        000218     retlw    00h            ;77h
  229. 0080             000219 
  230. 0080 3400        000220     retlw    00h            ;78h
  231. 0081 3400        000221     retlw    00h            ;79h=F9h= letzter tasten code war fehlerhaft
  232. 0082 3400        000222     retlw    00h            ;7Ah=FAh= tastenpuffer im keybord voll
  233. 0083 3400        000223     retlw    00h            ;7Bh
  234. 0084 3400        000224     retlw    00h            ;7Ch=FCh= selbsttest der tastatur war fehlerhaft
  235. 0085 3400        000225     retlw    00h            ;7Dh=FDh= beginn der beim Einschalten gedrueckten Tasten
  236. 0086 3400        000226     retlw    00h            ;7Eh=FEh= ende der beim Einschalten gedrueckten Tasten
  237. 0087 3400        000227     retlw    00h            ;7Fh
  238. 0088             000228 
  239. 0088             000229     
  240. 0088             000230 
  241. 0088             000231 
  242. 0088             000232 
  243. 0088             000233 
  244. 0088             000234 
  245. 0088             000235 
  246. 0088             000236 
  247. 0088             000237 
  248. 0088             000238 
  249. 0088             000239 
  250. 0088             000240 
  251. 0088             000241 
  252. 0088             000242 
  253. 0088             000243 
  254. 0088             000244 
  255. 0088             000245 
  256. 0088             000246 
  257. 0088             000247 
  258. 0088             000248 
  259. 0088             000249 
  260. 0088             000250 
  261. 0088             000251 
  262. 0088 018E        000252 Reset    clrf    Akeydat            ;Akeydat is used as character counter
  263. 0089             000253 
  264. 0089 300B        000254 check    movlw    11
  265. 008A 020E        000255     subwf    Akeydat,w        ;how many characters ?
  266. 008B 1903        000256     btfsc    z
  267. 008C 289F        000257     goto    ready
  268. 008D             000258 
  269. 008D 2092        000259     call    dat
  270. 008E 008F        000260     movwf    serbuf
  271. 008F 20D6        000261     call    sendb            ;send letter
  272. 0090 0A8E        000262     incf    Akeydat,f
  273. 0091 2889        000263     goto    check
  274. 0092             000264 
  275. 0092             000265 
  276. 0092             000266 
  277. 0092 080E        000267 dat    movf    Akeydat,w        ;letter to w routine
  278. 0093 0782        000268     addwf    pcl,f            ;jump in table
  279. 0094 346D        000269     retlw    "mache RESET"
  280. 0095 3461        000269 
  281. 0096 3463        000269 
  282. 0097 3468        000269 
  283. 0098 3465        000269 
  284. 0099 3420        000269 
  285. 009A 3452        000269 
  286. 009B 3445        000269 
  287. 009C 3453        000269 
  288. 009D 3445        000269 
  289. 009E 3454        000269 
  290. 009F             000270 
  291. 009F             000271 
  292. 009F             000272 
  293. 009F             000273 
  294. 009F             000274 
  295. 009F             000275 
  296. 009F             000276 
  297. 009F 20B2        000277 ready    call    sync
  298. 00A0             000278 
  299. 00A0             000279 
  300. 00A0             000280 
  301. 00A0             000281 
  302. 00A0 3007        000282 rcADAT    movlw    7
  303. 00A1 008C        000283     movwf    count0
  304. 00A2             000284 
  305. 00A2 20CD        000285 :loop    call    wACLK            ;wait for Amiga CLK
  306. 00A3 0D8E        000286     rlf    Akeydat,f        ;rotate bits into register
  307. 00A4 0B8C        000287     decfsz    count0,f
  308. 00A5 28A2        000288     goto    :loop            ;format is x6543210
  309. 00A6             000289 
  310. 00A6             000290 
  311. 00A6 0D8E        000291     rlf    Akeydat,f        ;format is 6543210x
  312. 00A7 20CD        000292     call    wACLK            ;wait for Amiga CLK
  313. 00A8 0C8E        000293     rrf    Akeydat,f        ;format is 76543210, jippije
  314. 00A9 098E        000294     comf    Akeydat,f        ;data is inverted
  315. 00AA             000295 
  316. 00AA 3005        000296     movlw    5
  317. 00AB 20BA        000297     call    wms            ;wait 5 ms
  318. 00AC             000298 
  319. 00AC             000299 ;    mov    serbuf,Akeydat
  320. 00AC             000300 ;    call    sendb            ;send raw data
  321. 00AC             000301 
  322. 00AC             000302 
  323. 00AC 2005        000303     call    rawkeys
  324. 00AD 008F        000304     movwf    serbuf
  325. 00AE             000305 
  326. 00AE 1F8E        000306     btfss    Akeydat,7        ;no sending if key up flag is set
  327. 00AF 20D6        000307     call    sendb            ;send the in table found code
  328. 00B0             000308 
  329. 00B0 20C3        000309     call    AHshake            ;all data OK, do the Handshake
  330. 00B1 28A0        000310     goto    rcADAT            ;receive next byte from keybord
  331. 00B2             000311 
  332. 00B2             000312 
  333. 00B2             000313 
  334. 00B2             000314 
  335. 00B2             000315 
  336. 00B2             000316 
  337. 00B2             000317 
  338. 00B2             000318 
  339. 00B2             000319 
  340. 00B2             000320 
  341. 00B2             000321 
  342. 00B2 20CD        000322 sync    call    wACLK            ;wait for clock and do no Acknowledge
  343. 00B3             000323     
  344. 00B3 30FA        000324     movlw    250
  345. 00B4 20BA        000325     call    wms            ;wait 250 ms (we want the sync mode!)
  346. 00B5             000326 
  347. 00B5 20CD        000327     call    wACLK            ;wait for Amiga CLK for Handshake
  348. 00B6             000328 
  349. 00B6 3001        000329     movlw    1
  350. 00B7 20BA        000330     call    wms            ;wait 1 ms
  351. 00B8             000331 
  352. 00B8 20C3        000332     call    AHshake            ;now we do the shake!
  353. 00B9 0008        000333     return
  354. 00BA             000334 
  355. 00BA             000335 
  356. 00BA             000336  
  357. 00BA             000337 
  358. 00BA             000338 
  359. 00BA             000339 
  360. 00BA 008C        000340 wms    movwf    count0
  361. 00BB             000341 
  362. 00BB 30F8        000342 :loop    movlw    248
  363. 00BC 008D        000343     movwf    count1
  364. 00BD 0000        000344 :do_it    nop
  365. 00BE             000345 
  366. 00BE 0B8D        000346     decfsz    count1,f
  367. 00BF 28BD        000347     goto    :do_it
  368. 00C0             000348 
  369. 00C0 0B8C        000349     decfsz    count0,f
  370. 00C1 28BB        000350     goto    :loop
  371. 00C2             000351 
  372. 00C2 0008        000352     return
  373. 00C3             000353 
  374. 00C3             000354 
  375. 00C3             000355 
  376. 00C3             000356 
  377. 00C3             000357 
  378. 00C3             000358 
  379. 00C3 30F9        000359 AHshake    movlw    11111001b        ;bit1 = ADAT = output
  380. 00C4 0065        000360     tris    RA
  381. 00C5             000361 
  382. 00C5 1085        000362     bcf    ADAT            ;clr Amiga data line
  383. 00C6             000363     
  384. 00C6 3028        000364     movlw    40
  385. 00C7 008C        000365     movwf    count0            ;40 * 3 = 120cycles = 120 µs (min 75µs)
  386. 00C8 0B8C        000366 :do_it    decfsz    count0,f
  387. 00C9 28C8        000367     goto    :do_it
  388. 00CA             000368 
  389. 00CA 30FB        000369     movlw    11111011b        ;bit1 = ADAT = input
  390. 00CB 0065        000370     tris    RA
  391. 00CC 0008        000371     return
  392. 00CD             000372 
  393. 00CD             000373 
  394. 00CD             000374 
  395. 00CD             000375 
  396. 00CD             000376 
  397. 00CD             000377 
  398. 00CD 1805        000378 wACLK    btfsc    ACLK            ;wait for neg clock pulse
  399. 00CE 28CD        000379     goto    wACLK
  400. 00CF             000380 
  401. 00CF 1C85        000381     btfss    ADAT
  402. 00D0 1003        000382     bcf    c
  403. 00D1 1885        000383     btfsc    ADAT
  404. 00D2 1403        000384     bsf    c            ;mov the data to carry bit
  405. 00D3             000385 
  406. 00D3 1C05        000386 wACLK2    btfss    ACLK            ;wait for pos clock pulse
  407. 00D4 28D3        000387     goto    wACLK2
  408. 00D5 0008        000388     return
  409. 00D6             000389 
  410. 00D6             000390 
  411. 00D6             000391 
  412. 00D6             000392 
  413. 00D6             000393 
  414. 00D6             000394 
  415. 00D6             000395 
  416. 00D6 20E7        000396 sendb    call    wbit            ;this are stop bits from previous sending
  417. 00D7 20E7        000397     call    wbit
  418. 00D8             000398 
  419. 00D8 1505        000399     bsf    TXD            ;send startbit
  420. 00D9 3008        000400     movlw    8
  421. 00DA 008C        000401     movwf    count0            ;8 bits to send
  422. 00DB 098F        000402     comf    serbuf,f        ;invert serbuf
  423. 00DC             000403 
  424. 00DC 20E7        000404 s_it    call    wbit
  425. 00DD 0C8F        000405     rrf    serbuf,f
  426. 00DE             000406 
  427. 00DE 1C03        000407     btfss    c
  428. 00DF 1105        000408     bcf    TXD
  429. 00E0 1803        000409     btfsc    c
  430. 00E1 1505        000410     bsf    TXD
  431. 00E2             000411 
  432. 00E2 0B8C        000412     decfsz    count0,f
  433. 00E3 28DC        000413     goto    s_it            ;all bits send ? decrement the bitcounter
  434. 00E4             000414 
  435. 00E4 20E7        000415     call    wbit
  436. 00E5 1105        000416     bcf    TXD            ;clear TXD, stopbit, lenght is defined by 
  437. 00E6             000417                     ;next sending
  438. 00E6 0008        000418     return
  439. 00E7             000419 
  440. 00E7             000420 
  441. 00E7             000421 
  442. 00E7             000422 
  443. 00E7             000423 
  444. 00E7 300D        000424 wbit    movlw    13
  445. 00E8 008D        000425     movwf    count1            ;19200 at 4 Mhz
  446. 00E9 0B8D        000426 :loop    decfsz    count1,f
  447. 00EA 28E9        000427     goto    :loop
  448. 00EB 0000        000428     nop
  449. 00EC 0008        000429     return
  450. 00ED             000430 
  451.  
  452.  
  453. Used Symbols
  454. -----------------------------------------
  455. PortA                            00000005
  456. PortB                            00000006
  457. pcl                              00000002
  458. RA                               00000005
  459. count0                           0000000C
  460. count1                           0000000D
  461. Akeydat                          0000000E
  462. serbuf                           0000000F
  463. rawkeys                          00000005
  464. Reset                            00000088
  465. check                            00000089
  466. dat                              00000092
  467. ready                            0000009F
  468. rcADAT                           000000A0
  469. sync                             000000B2
  470. wms                              000000BA
  471. AHshake                          000000C3
  472. wACLK                            000000CD
  473. wACLK2                           000000D3
  474. sendb                            000000D6
  475. s_it                             000000DC
  476. wbit                             000000E7
  477.  
  478.  
  479. Used Defines
  480. -----------------------------------------
  481. c                                3,0 
  482. z                                3,2 
  483. TXD                              PortA,2 
  484. ADAT                             PortA,1 
  485. ACLK                             PortA,0 
  486.  
  487.  
  488. PROGRAM MEMORY USAGE TABLE:    '-' = not used  'X' = used
  489.  
  490. 0000 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX
  491. 0040 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX
  492. 0080 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX
  493. 00C0 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXX--- ----------------
  494. 0100 : ---------------- ---------------- ---------------- ----------------
  495. 0140 : ---------------- ---------------- ---------------- ----------------
  496. 0180 : ---------------- ---------------- ---------------- ----------------
  497. 01C0 : ---------------- ---------------- ---------------- ----------------
  498. 0200 : ---------------- ---------------- ---------------- ----------------
  499. 0240 : ---------------- ---------------- ---------------- ----------------
  500. 0280 : ---------------- ---------------- ---------------- ----------------
  501. 02C0 : ---------------- ---------------- ---------------- ----------------
  502. 0300 : ---------------- ---------------- ---------------- ----------------
  503. 0340 : ---------------- ---------------- ---------------- ----------------
  504. 0380 : ---------------- ---------------- ---------------- ----------------
  505. 03C0 : ---------------- ---------------- ---------------- ----------------
  506.  
  507. Program Memory Words Used:  0237
  508. Program Memory Words Free:  0787
  509.  
  510. Errors: 0
  511.